from appium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

class Base():
    def __init__(self):
        cap={
                "platformName": "Android",
                "appium:deviceName": "emulator-5554",
                "appium:automationName": "uiautomator2",
                "appium:appPackage": "com.xiachufang",
                "appium:appActivity": ".activity.home.HomeActivity",
                "appium:noReset": True
            }
        self.driver=webdriver.Remote('http://127.0.0.1:4723/wd/hub',cap)
        # 隐式等待：全局等待
        self.driver.implicitly_wait(10)
        # 元素定位
    def find_ele(self,loc):
        ele=self.driver.find_element(*loc)
        return ele
        # 显示等待
    def find_wait(self,loc):
        ele=WebDriverWait(self.driver,20).until(EC.element_to_be_clickable(loc))
        return ele
        # 轻敲
    def qingqiao(self,x,y):
        self.driver.tap([(x,y)],200)
        # 滑动
    def hua(self,a,b,c,d):
        self.driver.swipe(a,b,c,d,200)
        # 截图
    def jietu(self,file):
        self.driver.save_screenshot(file)
        # 退出？
    def tui(self):
        self.driver.quit()